home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_1 / factory < prev    next >
Internet Message Format  |  1995-03-31  |  13KB

  1. Path: seq!spell
  2. From: Douglas R. Cannon <dougc@bert.cs.byu.edu>
  3. Subject:  v01i005:  factory - Animation Program, Part01/01
  4. Newsgroups: comp.sources.hp48
  5. Followup-To: comp.sys.hp48
  6. Approved: spell@seq.uncwil.edu
  7.  
  8. Submitted-by: Douglas R. Cannon <dougc@bert.cs.byu.edu>
  9. Posting-number: Volume 1, Issue 5
  10. Archive-name: factory/part01
  11.  
  12. BEGIN_DOC factory.doc
  13.  
  14. Hi Everybody.
  15.  
  16.    I have here what I believe to be a pretty neat animation program
  17. for the HP48s.  I wrote it originally for the HP28s, but I converted
  18. it today to the HP48s.
  19.    The original idea came from just playing around with a program I
  20. wrote for the IBM PC.  One could draw pictures with it and it would
  21. spew out 548 decimal numbers that could then be typed into the HP28s
  22. and converted to a picture.  (Size 137 by 32) The Factory has 8 pictures
  23. for a total of 4384 numbers that I spent over 6 hours typing into my
  24. HP28s.  I must have been just about crazy.
  25.  
  26.    Anyhow, even if you're not into this stuff too much, try it out!
  27. It is only 10K when first downloaded, and after running setup it only
  28. takes up 5K of memory!  I suggest you at least look at it and then
  29. throw it away if you don't like it.  I think you can impress your
  30. friends with it.
  31.    It will create a directory, and in that directory will be 11 files.
  32. 'SETUP' must be run first, and it will set things up.  After running
  33. SETUP, there will be only 9 files.  'DOIT' is the program that you run.
  34. This will display the 8 picture animation until a key is pressed. The
  35. other 8 files are graphics objects, the 8 pictures to the animation.
  36. You may notice that each graphics object is of size 137 by 32 because
  37. that is the size of the HP28s screen.  So, 6 rows of pixels get cut off
  38. the right edge at no great loss.
  39.    You may also notice that the program 'DOIT' is not very elegant in
  40. nature.  It was written this way to provide the fastest possible changing
  41. between pictures and to give the smoothest possible animation. The HP48s
  42. is much slower with this application than was my HP28s, and I see no way
  43. of speeding up this animation. As it is, it seems to go fast enough.
  44.  
  45.    You can give this away, change it, mutilate it, or whatever...just give
  46. me a little credit and I'm satisfied.
  47.  
  48.    One more thing.  Do me a favor and if you like this, just drop me
  49. an e-mail note to let me know.  I'm curious if anybody is interested in
  50. this sort of stuff.  Questions?  Feel free to ask.
  51.  
  52. END_DOC
  53.  
  54. BYTES: #D2DBh 11083
  55.  
  56. BEGIN_RPL factory
  57. %%HP: T(3)A(R)F(.);
  58. DIR
  59.   SETUP
  60.     \<< F1 ST\-> 'F1'
  61. STO F2 ST\-> 'F2' STO
  62. F3 ST\-> 'F3' STO F4
  63. ST\-> 'F4' STO F5 ST\->
  64. 'F5' STO F6 ST\->
  65. 'F6' STO F7 ST\->
  66. 'F7' STO F8 ST\->
  67. 'F8' STO { SETUP
  68. ST\-> } PURGE
  69.     \>>
  70.   ST\->
  71.     \<< \-> S
  72.       \<< "" 1 S SIZE
  73.         FOR N S N
  74. GET +
  75.         NEXT STR\->
  76.       \>>
  77.     \>>
  78.   DOIT
  79.     \<< F1 PICT STO {
  80. # 0d # 0d } PVIEW
  81. PICT { # 0d # 35d }
  82. "THE FACTORY" 1
  83. \->GROB REPL PICT {
  84. # 0d # 41d }
  85. "BY: DOUGLAS R. CANNON"
  86. 1 \->GROB REPL PICT {
  87. # 0d # 47d }
  88. "ORIGINALLY WRITTEN FOR THE HP28s"
  89. 1 \->GROB REPL PICT {
  90. # 0d # 53d }
  91. "IN AUGUST 1989" 1
  92. \->GROB REPL
  93.       DO PICT {
  94. # 0d # 0d } F1 REPL
  95. PICT { # 0d # 0d }
  96. F2 REPL PICT { # 0d
  97. # 0d } F3 REPL PICT
  98. { # 0d # 0d } F4
  99. REPL PICT { # 0d
  100. # 0d } F5 REPL PICT
  101. { # 0d # 0d } F6
  102. REPL PICT { # 0d
  103. # 0d } F7 REPL PICT
  104. { # 0d # 0d } F8
  105. REPL
  106.       UNTIL KEY
  107.       END DROP
  108.     \>>
  109.   F1 {
  110. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100008FFF"
  111. "FF000000000000F3F3F3F3FBBAA20000000000FFFF10000000D2D2D2D2DE5553006003"
  112. "03030000EFF70000D2D2D2D2DEAAF708F1878787030300081000D2D2D2D2D75D0408FD"
  113. "878787878703002000F3F3F3F3FFFAF700F2030303878787032000FFFFFFFFFF1FF700"
  114. "008FFFF0030387872000CCCCCCCCCC2C04000000000FFFF103872000000000000C4C04"
  115. "0002000000000EFF732000000000000C48F7000C000000008FFF702000CCCCCCCCCC28"
  116. "F70C000000FFFF7000002000FFFFFFFFFF18040F308FFF000000606020000000000000"
  117. "08040F306000006060F0F02000000000000008F70E10706060F0F0F0F0200000000000"
  118. "0008F70000F0F0F0F0F06068100000000000000C040000F0F0F06068FFF70000000000"
  119. "00000C04000070606FFFF70000000000000000000FF70000EFFFF0000000000000FFFF"
  120. "FFFFFFFAF7000000000000000000000000000000007D04000000000000000000000018"
  121. "18181818BA040000000000000000000000242424242C5DF7000000FFFFFFFFFFFFF700"
  122. "7E7E7E7E7EAAA2000008C7830000000008004242424247555300081CEFC7830000008B"
  123. "107E7E7E7EFBAAA18FFF3C6CEEC7830083CF10FFFFFFFFFFFFF0CC0D7CEE6CEEC783C7"
  124. "EE10CCCCCCCCC02760FF0CBCC7EE6CEEC7EE6C10000000000E57EFEF0CBC83C7EE6CEE"
  125. "6CEE10000000000E5260CC014C0083C7EF6CEFCF10CCCCCCCCC02200BFFF38000083C7"
  126. "FFD78B00FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  127. }
  128.   F2 {
  129. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100008FFF"
  130. "FF000000000000E7E7E7E7EFBAA200C0000000FFFF10000000A5A5A5A5AD555300F306"
  131. "06000000EFF70000A5A5A5A5AFAAF700F30F0F06060600081000A5A5A5A5A75D0400E1"
  132. "0F0F0F0F0F06002000E7E7E7E7EFFA04000C06060F0F0F0F002000FFFFFFFFFF1FF700"
  133. "028FFFF606060F06200099999999993CF7000000000FFFF1060F2000000000000C4C04"
  134. "0000000000000EFF7F2000000000000C48040C02000000008FFF762000666666666628"
  135. "F70F3C0000FFFF7000002000FFFFFFFFFF18F70F308FFF000000303020000000000000"
  136. "08040E1000003030387870200000000000000804000810387878787870200000000000"
  137. "0008F7000C38787878703038100000000000000CF7000C7870303038FFF70000000000"
  138. "00000C04000870300FFFF70000000000000000000F040000BFFFF0000000000000FFFF"
  139. "FFFFFFFAF7000000000000000000000000000000007DF700000000000000000000000C"
  140. "0C0C0C0CBA040000000000000000000000121212121E5DF7000000FFFFFFFFFFFFF700"
  141. "3F3F3F3F3FAAA20008180700000000000F002121212127555300081C9F07000000078F"
  142. "103F3F3F3FBBAAA18FFF3CDD9F0700078FCD10FFFFFFFFFFFFF0C81D7CD8DD9F078FCD"
  143. "D81066666666603760FF1CBCCDD8DD9FCDD8DD10000000000C57EFEF1CBC8FCDD8DDD8"
  144. "DD9F10000000000E4260C8114C078FCFD8DF9F0F1099999999932200BFFF3800078FEF"
  145. "BF070800FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  146. }
  147.   F3 {
  148. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100818FFF"
  149. "FF000000000000CFCFCFCFCFBAA200C3000000FFFF100000004B4B4B4B4F555300C70C"
  150. "0C0C0000EFF700004B4B4B4B4FAAF700870E1E1E1C00000810004B4B4B4B475DF70003"
  151. "0E1E1E1E1C0C002000CFCFCFCFCFFA0400000C0C0C0E1E1E102000FFFFFFFFFF1F0400"
  152. "0C8FFFF00C0E1E10200033333333393CF7000200000FFFFD0C0C2000000000000C4CF7"
  153. "0C00000000000EFF7E3000000000000648040F30000000008FFF7E3000333333333328"
  154. "040F320000FFFF70000C2000FFFFFFFFFF18F70E1C8FFF000008181020000000000000"
  155. "08F70000000008181C3C30200000000000000804000608181C3C3C3C30200000000000"
  156. "000804000F0C3C3C3C381818100000000000000CF7000F1C3C381818FFF70000000000"
  157. "00000CF7000E18181FFFF70000000000000000000F04000C8FFFF0000000000000FFFF"
  158. "FFFFFFFA04000000000000000000000000000000007DF7000000000000000000000006"
  159. "0606060EBAF70000000000000000000000090909090D5DF7000810FFFFFFFFFFFFF700"
  160. "9F9F9F9F9FAAA200081800000000000E0F009090909097555300081C1E0000000E0F9F"
  161. "109F9F9F9F9BAAA18FFF3C3F1E000E0F9BB910FFFFFFFFFFFFF0C03D7CBB3F1E0F9BB1"
  162. "BB10333333333B3760FF3CBCB1BB3F9BB1BB3F10000000000C47EFEF3CBC9BB1BBB1BB"
  163. "3F1E1000000000064260C0314C0F9FB1BF3F1E081033333333332200BFFF380E0FDF7F"
  164. "1E000800FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  165. }
  166.   F4 {
  167. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100068FFF"
  168. "FF0000000000009F9F9F9F9FBAA2000F000000FFFF10000000969696969E5553000F18"
  169. "18100000EFF70000969696969EAAF7000E1C3C3818181008100096969696975DF7000C"
  170. "0C3C3C3C3C381020009F9F9F9F9FFAF7000008181C3C3C3C302000FFFFFFFFFF1F0400"
  171. "008FFFF818181C30200066666666603C040C0C00000FFFF108102000000000000C5CF7"
  172. "0F32000000000EFF7C2000000000000E48F70F30000000008FFF7E3000999999999328"
  173. "040E100000FFFF70000E3000FFFFFFFFFF180400028FFF00000C0C0C20000000000000"
  174. "08F7000C00000C0C0E1E102000000000000008F700810C0C0E1E1E1E10200000000000"
  175. "00080400C30E1E1E1E1C0C08100000000000000C0400C70E1E1C0C08FFF70000000000"
  176. "00000CF700870C0C0FFFF70000000000000000000FF700038FFFF0000000000000FFFF"
  177. "FFFFFFFA04000000000000000000000000000000007D04000000000000000000000003"
  178. "0303030BBAF70008100000000000000000848484848C5DF7000810FFFFFFFFFFFFF700"
  179. "CFCFCFCFCFAAA2000818000000000C1E3C004848484847555300081C1000000C1E3F7E"
  180. "10CFCFCFCFCBAAA18FFF3C3C100C1E37736F10FFFFFFFFFFFFF0C06D7C7E3C1E377367"
  181. "7B1099999999993760FF7CBC677E3773677E3F10000000000C47EFEF7CBC736773677E"
  182. "3C1E10000000000C4260C0614C3F736F7E3C100C1066666666662200BFFF381EBFFE3C"
  183. "10000800FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  184. }
  185.   F5 {
  186. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100008FFF"
  187. "FF0000000000003F3F3F3F3FBAA20008100000FFFF100000002D2D2D2D2D5553000C30"
  188. "30300000EFF700002D2D2D2D2FAAF7000C7878703030000810002D2D2D2D275D040008"
  189. "7878787870303020003F3F3F3FBFFAF70000303038787878702000FFFFFFFFFF1FF70C"
  190. "008FFFF0303878702000CCCCCCCCC02C040F3000000FFFF130302000000000000E5C04"
  191. "0F3C000000000EFF702000000000000E58F70E12000000008FFF762000CCCCCCCCC028"
  192. "F700000000FFFF70000F2000FFFFFFFFFF180400008FFF000006060F20000000000000"
  193. "08040002000006060F0F062000000000000008F7000C06060F0F0F0F00200000000000"
  194. "0008F700C00F0F0F0F060608100000000000000C0400F30F0F060608FFF70000000000"
  195. "00000C0400F306060FFFF70000000000000000000FF700E18FFFF0000000000000FFFF"
  196. "FFFFFFFAF7000000000000000000000000000000007D04000810000000000000000081"
  197. "81818189BA040008100000000000000000424242424E5DF7000810FFFFFFFFFFFFF700"
  198. "E7E7E7E7EFAAA2000818000000083C7838002424242427555300081C0000083C7EFC78"
  199. "10E7E7E7E7EBAAA18FFF3C30083C7EE6CEEC10FFFFFFFFFFFFF0C0CD7C783C7EE6CEE6"
  200. "CE10CCCCCCCCCC2760FFFCBCEC7EE6CEEC7EEE10000000000C47EFEFFCBCCEE6CEEC78"
  201. "3C7E10000000000C4260C0C14CF6CEFC7830083C10CCCCCCCCCC2200BFFF387FFD7830"
  202. "00000800FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  203. }
  204.   F6 {
  205. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100008FFF"
  206. "FF0000000000007E7E7E7E7EBAA20000600000FFFF100000005A5A5A5A5E5553000070"
  207. "60600000EFF700005A5A5A5A5EAAF70000F0F0F06060000810005A5A5A5A575D040000"
  208. "F0F0F0F0F0606020007E7E7E7EFFFA040C00706060F0F0F0F02000FFFFFFFFFF1FF70F"
  209. "30EFFFF06060F0F0200099999999932CF70F3000000FFFF160602000000000000E4C04"
  210. "0E10000000000EFF702000000000000C5804000C000000008FFF702000666666666038"
  211. "F700020000FFFF7000032000FFFFFFFFFF18F700008FFF000000038720000000000000"
  212. "0804000000000303038787200000000000000804006203038787878703200000000000"
  213. "0008F708FD87878787870308100000000000000CF708F1878703030BFFF70000000000"
  214. "00000C0400F003030FFFF70000000000000000000F0400008FFFF0000000000000FFFF"
  215. "FFFFFFFAF7000000000000000000000000000000007DF70000000000000000000000C0"
  216. "C0C0C0C8BA040008100000000000000000212121212D5DF7000810FFFFFFFFFFFFF700"
  217. "F3F3F3F3FFAAA200081800000078F07008001212121217555300081C000078FCF9F078"
  218. "10F3F3F3F3FBAAA18FFF3C0078FCDD8DD9F810FFFFFFFFFFFFF0C06D7C78FCDD8DDD8D"
  219. "D91066666666662760FF7CBCFCDD8DD9FCDD8D10000000000C47EFEF7CBCDD8DD9F078"
  220. "FCDD10000000000C4260C0614C8DF9F0700078FC1099999999993200BFFF38FBF07000"
  221. "00007800FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  222. }
  223.   F7 {
  224. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100008FFF"
  225. "FF000000000000FCFCFCFCFCBAA20000000000FFFF10000000B4B4B4B4BC55530000F0"
  226. "C0C00000EFF70000B4B4B4B4BEAAF70008E1E1E1C0C000081000B4B4B4B4B75DF70810"
  227. "E1E1E1E1E1C0C02000FCFCFCFCFFFA040E70C0C0C0E1E1E1E12000FFFFFFFFFF1F040E"
  228. "788FFFF0C0C0E1E1200033333333332CF70C3030000FFFF1C0C0200000000000064CF7"
  229. "0000000000000EFF702000000000000C48040000000000008FFF702000333333333938"
  230. "0400081000FFFF7000002000FFFFFFFFFF18F700048FFF000081818120000000000000"
  231. "08F7003000008181C3C3C32000000000000008040CF08181C3C3C3C3C3200000000000"
  232. "0008040CF4C3C3C3C3818189100000000000000CF70878D3C3818108FFF70000000000"
  233. "00000CF7000081810FFFF70000000000000000000F0400008FFFF0000000000000FFFF"
  234. "FFFFFFFA04000000000000000000000000000000007DF7000000000000000000000060"
  235. "60606068BAF70000000000000000000000909090909C5DF7000810FFFFFFFFFFFFF700"
  236. "F9F9F9F9FFAAA20008180000E0F1E00008000909090907555300081C00E0F9F3F1E008"
  237. "10F9F9F9F9FBAAA18FFF3CE0F9BB1BB3F1E810FFFFFFFFFFFFF0C03D7CF9BB1BBB1BB3"
  238. "F91033333333332760FF3CBCBB1BB3F9BB1BBB10000000000647EFEF3CBC1BB3F1E0F9"
  239. "BB1B10000000000C4260C0314CF3F1E000E0F9FB10333333333B3200BFFF38F1E00000"
  240. "00E0F900FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  241. }
  242.   F8 {
  243. "GROB 137 32 FFFFFFFFFFFF700000000000000000000000000000000075D100008FFF"
  244. "FF000000000000F9F9F9F9F9BAA20000000000FFFF10000000696969696D5553000081"
  245. "81810000EFF70000696969696FAAF70038D3C3C381810008100069696969675DF70CF4"
  246. "C3C3C3C3C381812000F9F9F9F9FFFAF70CF0818181C3C3C3C32000FFFFFFFFFF1F0408"
  247. "708FFFF08181C3C3200066666666662C04000400000FFFF181812000000000000C4CF7"
  248. "0008100000000EFF702000000000000C48F70000000000008FFF702000999999999938"
  249. "0400000000FFFF7000C02000FFFFFFFFFF18040810BFFF000000C0E120000000000000"
  250. "08F70E780000C0C0C0E1E12000000000000008F70E70C0C0E1E1E1E1C0200000000000"
  251. "0008040C30E1E1E1E1E1C008100000000000000C040008E1E1C0C0C8FFF70000000000"
  252. "00000CF70000F0C00FFFF70000000000000000000FF700008FFFF0000000000000FFFF"
  253. "FFFFFFFA04000000000000000000000000000000007D04000000000000000000000030"
  254. "30303038BAF70000000000000000000000484848484C5DF7000000FFFFFFFFFFFFF700"
  255. "FCFCFCFCFEAAA200081800C1E3C1000008008484848487555300081CC1E3F7E3C10008"
  256. "10FCFCFCFCFBAAA18FFF3CE3773677E3C10810FFFFFFFFFFFFF0C81D7C7736773677E3"
  257. "C91099999999932760FF1CBC3677E3773677EB10000000000E47EFEF1CBC77E3C1E377"
  258. "367F10000000000C5260C8114CE3C100C1E3F73E1066666666663200BFFF38C1000000"
  259. "C1EBFF00FFFFFFFFFF1CFF030810FFFFFFFFFFFFF700"
  260. }
  261. END
  262. END_RPL
  263.